Template Type Deduction

2024-09-12

最后编辑于:2024-09-13

    #Cpp
    #template
template <typename T>
void f(ParamType param);

模版类型推断

  1. 如果expr是引用,忽略引用部分
  2. 使用expr的类型去匹配ParamType,确定ParamType和模板类型T

ParamTypeT&T会按照expr的类型推导 若ParamTypeconst T&T会被推导为常量类型

指针类型的推导相同

万能引用(Universal reference)

  • expr为左值,会推导为左值引用
  • expr是右值,则还是右值